﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Logica.Modulos.ClasesLogica;
using Modelo.Modulos.ClasesModelado;

namespace ProyectoFinal
{
    public partial class frmAdministradorTareas : Form
    {
        private int idPerfilPermiso;
        private int idUsuario;
        public int IdPerfilPermiso
        {
            get { return idPerfilPermiso; }
            set { idPerfilPermiso = value; }
        }
        public int IdUsuario
        {
            get { return idUsuario; }
            set { idUsuario = value; }
        }

        public frmAdministradorTareas()
        {
            InitializeComponent();
        }

        private void btnDashBoard_Click(object sender, EventArgs e)
        {
            Close();

        }

        private void btnAgregar_Click(object sender, EventArgs e)
        {
            frmTarea tarea = new frmTarea();
            tarea.Accion = "Agregar";
            tarea.IdUsuario = idUsuario;
            tarea.ShowDialog();
            CargarGrid("Agregar");
        }

        private void btnEditar_Click(object sender, EventArgs e)
        {
            frmTarea tarea = new frmTarea();
            tarea.Accion = "Editar";
            int Idindice = dataGridView1.SelectedRows[0].Index;
            tarea.IdTarea = Convert.ToInt32(dataGridView1[0, Idindice].Value);
            tarea.IdUsuario = idUsuario;
            tarea.ShowDialog();
            CargarGrid("Editar");

        }

        private void btnVer_Click(object sender, EventArgs e)
        {
            frmTarea tarea = new frmTarea();
            tarea.Accion = "Ver";
            int Idindice = dataGridView1.SelectedRows[0].Index;
            tarea.IdTarea = Convert.ToInt32(dataGridView1[0, Idindice].Value);
            tarea.IdUsuario = idUsuario;
            tarea.ShowDialog();
        }

        private void frmAdministradorTareas_Load(object sender, EventArgs e)
        {
            CargarPermisos();
            CargarGrid("Agregar");

        }

        public void CargarPermisos()
        {
            btnAgregar.Visible = false;
            btnEditar.Visible = false;
            btnEliminar.Visible = false;
            btnVer.Visible = false;
            Perfil_PermisoLog Logica = new Perfil_PermisoLog();
            PerfilesMod objMod = new PerfilesMod();
            objMod.IdPerfil = idPerfilPermiso;
            List<PerfilesMod> listaPermisos_Perfil = Logica.ConsultarPermisoIdPerfil(objMod);



            for (int i = 0; i < listaPermisos_Perfil.Count; i++)
            {
                if (listaPermisos_Perfil[i].NombrePermiso == "Crear Tarea")
                {
                    btnAgregar.Visible = true;
                    
                }
                else
                {
                    if (listaPermisos_Perfil[i].NombrePermiso == "Modificar Tarea")
                    {
                        btnEditar.Visible = true;

                    }
                    else
                    {
                        if (listaPermisos_Perfil[i].NombrePermiso == "Eliminar Tarea")
                        {
                            btnEliminar.Visible = true;
                        }
                        else
                        {
                            if (listaPermisos_Perfil[i].NombrePermiso == "Ver Tarea")
                            {
                                btnVer.Visible = true;
                            }
                        }
                    }

                }
            }
        }

        public void CargarGrid(string Accion_Form)
        {
            if ((Accion_Form == "Agregar") || (Accion_Form == "Cargar") || (Accion_Form == "Editar"))
            {
                dataGridView1.Rows.Clear();
                TareasLog logica = new TareasLog();
                List<TareasMod> listaClientes = logica.ConsultarTareas();

                for (int i = 0; i < listaClientes.Count; i++)
                {
                    dataGridView1.Rows.Add();
                    dataGridView1.Rows[i].Cells[0].Value = listaClientes[i].IdTarea;
                    dataGridView1.Rows[i].Cells[1].Value = listaClientes[i].NombreTarea;
                    dataGridView1.Rows[i].Cells[2].Value = listaClientes[i].NombreCompleto;
                    dataGridView1.Rows[i].Cells[3].Value = listaClientes[i].NombrePrioridad;
                    dataGridView1.Rows[i].Cells[4].Value = listaClientes[i].FechaInicio;
                    dataGridView1.Rows[i].Cells[5].Value = listaClientes[i].FechaFin;
                    dataGridView1.Rows[i].Cells[6].Value = listaClientes[i].DescripcionTarea;
                }
            }
        }
    }
}
